bitkeeper revision 1.1159.226.3 (41f55c8er11pRwXCJ66we1vDzrEZ9Q)
authoriap10@labyrinth.cl.cam.ac.uk <iap10@labyrinth.cl.cam.ac.uk>
Mon, 24 Jan 2005 20:37:34 +0000 (20:37 +0000)
committeriap10@labyrinth.cl.cam.ac.uk <iap10@labyrinth.cl.cam.ac.uk>
Mon, 24 Jan 2005 20:37:34 +0000 (20:37 +0000)
With ipv6, every network interface always has a link local
address.  This fools the network script into thinking that
xen-br0 already has a network address, and it refuses to
transfer over eth0's IP address to xen-br0.

By grepping for 'inet ' instead of just 'inet', the network
script is no longer fooled and does the right thing.  This
patch makes Xen networking work again on my Fedora system.

Signed-off-by: Rik van Riel <riel@redhat.com>
Signed-off-by: ian.pratt@cl.cam.ac.uk
tools/examples/network

index b679b93e43b0cf4c46d29a5c59ac5573a011b807..229881d7371cfeb2999199af39add1a4a6f4bddd 100755 (executable)
@@ -61,13 +61,13 @@ transfer_addrs () {
     local src=$1
     local dst=$2
     # Don't bother if $dst already has IP addresses.
-    if ip addr show dev ${dst} | egrep -q '^ *inet' ; then
+    if ip addr show dev ${dst} | egrep -q '^ *inet ' ; then
         return
     fi
     # Address lines start with 'inet' and have the device in them.
     # Replace 'inet' with 'ip addr add' and change the device name $src
     # to 'dev $src'. Remove netmask as we'll add routes later.
-    ip addr show dev ${src} | egrep '^ *inet' | sed -e "
+    ip addr show dev ${src} | egrep '^ *inet ' | sed -e "
 s/inet/ip addr add/
 s@\([0-9]\+\.[0-9]\+\.[0-9]\+\.[0-9]\+\)/[0-9]\+@\1@
 s/${src}/dev ${dst}/